home *** CD-ROM | disk | FTP | other *** search
/ The Fatted Calf / The Fatted Calf.iso / Unix / Shells / tcsh / Source / config.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-21  |  3.5 KB  |  140 lines

  1. /*
  2.  * config.h -- configure various defines for tcsh
  3.  *
  4.  * All source files should #include this FIRST.
  5.  *
  6.  * Edit this to match your system type.
  7.  */
  8.  
  9. /****************** System dependant compilation flags ****************/
  10. /*
  11.  * POSIX    This system supports IEEE Std 1003.1-1988 (POSIX).
  12.  */
  13. #undef POSIX
  14.  
  15. /*
  16.  * POSIXJOBS    This system supports the optional IEEE Std 1003.1-1988 (POSIX)
  17.  *        job control facilities.
  18.  */
  19. #undef POSIXJOBS
  20.  
  21. /*
  22.  * POSIXSIGS    Use the POSIX signal facilities to emulate BSD signals.
  23.  */
  24. #undef POSIXSIGS
  25.  
  26. /*
  27.  * VFORK    This machine has a vfork().  
  28.  *        It used to be that for job control to work, this define
  29.  *        was mandatory. This is not the case any more.
  30.  *        If you think you still need it, but you don't have vfork, 
  31.  *        define this anyway and then do #define vfork fork.  
  32.  *        I do this anyway on a Sun because of yellow pages brain damage,
  33.  *        [should not be needed under 4.1]
  34.  *        and on the iris4d cause    SGI's fork is sufficiently "virtual" 
  35.  *        that vfork isn't necessary.  (Besides, SGI's vfork is weird).
  36.  *        Note that some machines eg. rs6000 have a vfork, but not
  37.  *        with the berkeley semantics, so we cannot use it there either.
  38.  */
  39. #if defined(NeXT) && !defined(__STRICT_BSD__)
  40. # undef VFORK
  41. #endif
  42.  
  43. /*
  44.  * BSDJOBS    You have BSD-style job control (both process groups and
  45.  *        a tty that deals correctly
  46.  */
  47. #define BSDJOBS
  48.  
  49. /*
  50.  * BSDSIGS    You have 4.2-style signals, rather than USG style.
  51.  *        Note: POSIX systems should not define this unless they
  52.  *        have sigvec() and friends (ie: 4.3BSD-RENO, HP-UX).
  53.  */
  54. #define BSDSIGS
  55.  
  56. /*
  57.  * BSDTIMES    You have BSD-style process time stuff (like rusage)
  58.  *        This may or may not be true.  For example, Apple Unix
  59.  *        (OREO) has BSDJOBS and BSDSIGS but not BSDTIMES.
  60.  */
  61. #define BSDTIMES
  62.  
  63. /*
  64.  * BSDLIMIT    You have BSD-style resource limit stuff (getrlimit/setrlimit)
  65.  */
  66. #define BSDLIMIT
  67.  
  68. /*
  69.  * BSDNICE    Your system uses setpriority() instead of nice, to
  70.  *        change a processes scheduling priority
  71.  */
  72. #define BSDNICE
  73.  
  74. /*
  75.  * TERMIO    You have struct termio instead of struct sgttyb.
  76.  *         This is usually the case for SYSV systems, where
  77.  *        BSD uses sgttyb. POSIX systems should define this
  78.  *        anyway, even though they use struct termios.
  79.  */
  80. #undef TERMIO
  81.  
  82. /*
  83.  * SYSVREL    Your machine is SYSV based (HPUX, A/UX)
  84.  *        NOTE: don't do this if you are on a Pyramid -- tcsh is
  85.  *        built in a BSD universe.
  86.  *        Set SYSVREL to 1, 2, 3, or 4, depending the version of System V
  87.  *        you are running. Or set it to 0 if you are not SYSV based
  88.  */
  89. #define SYSVREL    0
  90.  
  91. /*
  92.  * YPBUGS    Work around Sun YP bugs that cause expansion of ~username
  93.  *        to send command output to /dev/null
  94.  */
  95. #undef YPBUGS
  96.  
  97. /*
  98.  * SIGVOID    Define this if your signal handlers return void.  On older
  99.  *        systems, signal returns int, but on newer ones, it returns void.
  100.  */
  101. #if !defined(NeXT) && !defined(__STRICT_BSD__)
  102. # define SIGVOID 
  103. #else
  104. # undef SIGVOID 
  105. #endif
  106.  
  107. /*
  108.  * HAVEDUP2    Define this if your system supports dup2().
  109.  */
  110. #define HAVEDUP2
  111.  
  112. /*
  113.  * UTHOST    Does the utmp file have a host field?
  114.  */
  115. #define UTHOST
  116.  
  117. /*
  118.  * DIRENT    Your system has <dirent.h> instead of <sys/dir.h>
  119.  */
  120. #undef DIRENT
  121. /****************** local defines *********************/
  122. #ifdef NeXT
  123. # define environ _environ
  124. /* strcoll() on the NeXT appears to have 3 args, but only 2 args in tcsh src */
  125. #define NOSTRCOLL
  126. #else
  127. # ifdef notdef
  128. #  define SETENV_IN_LIB        /* read comment in sh.func.c */
  129. #  define setenv(x,y) Setenv(x,y)
  130. # endif
  131. #endif
  132.  
  133. /****************** configurable hacks ****************/
  134. /* have been moved to config_f.h */
  135. #include "config_f.h"
  136.  
  137. #ifndef NeXT
  138. #undef NLS
  139. #endif
  140.